﻿#region using
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Schema;
#endregion

namespace XmlGenSharp.Logic.Main
{
  public interface IAnalyzerContext
  {
    // Properties
    IErrorList Errors { get; }

    // Methods
    void FoundComplexType(XmlSchemaComplexType complexType);
    void FoundSimpleType(XmlSchemaSimpleType simpleType);
    void FoundEnumeration(EnumerationInfo enumerationInfo);
    void FoundEnumerationElement(EnumerationInfo enumerationInfo, Element element);
    void AddError(string sourceClass, string sourceMember, string message);
    void OnBeforeAnalyzeFromJobFile();
    void OnAfterAnalyzeFromJobFile();
    void OnBeforeAnalyzeFromXsd();
    void OnAfterAnalyzeFromXsd();
    void OnBeforeAnalyzeFromEnumerationInfo();
    void OnAfterAnalyzeFromEnumerationInfo();
  }
}
